package com.principles.structure.adapter;

/**
 * @Description 适配器模式————将一个类的接口换成客户端所期待的另一个种接口，从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作
 *  适配器模式 原有的不兼容 需要兼容 不加功能  对原有的返回值进行改造
 *  装饰器模式 添加功能
 * @Date 2025/1/27 22:30
 **/
public class AdapterPattern {
    public static void main(String[] args) {
        new Adapter(new Speaker()).translate();
    }
}
class Speaker{
    public String speak(){
        return "hello word!";
    }
}

interface Translator{
    public String translate();
}

class Adapter implements Translator{

    private Speaker speaker;

    public Adapter(Speaker speaker) {
        this.speaker = speaker;
    }

    @Override
    public String translate() {
        String result = speaker.speak();
        // 手语解释
        result = result+"100";
        return result;
    }
}
